iT邦幫忙

1

資料結構與演算法(筆記)

  • 分享至 

  • xImage
  •  

一、資料結構的定義
"資料結構與演算法"是程式設計最佳化的”方法論”

名詞解釋:
資料:未經處理的文字、數字、符號、模型
資訊:以特定方法有系統的整理、歸納、即進行分析
資料處理:紀錄、排序、合併、整合、計算、統計等處理的過程

"資料結構"可分為"數值結構"與"非數值結構"
數值結構:可用運算子進行運算的資料
非數值結構:
1.基本資料類型:
純量資料型態:整數 浮點數 字元

2.結構化資料型態
虛擬資料型態:字串 陣列 指標 串列 檔案

3.抽象資料型態
堆疊

二、演算法
資料結構+演算法=可執行的程式
為了解決某個工作或問題,所需要有限數目的機械性或重複性指令與計算步驟。

具有下列五項特質
1.輸入
2.輸出
3.明確性:步驟與指令無歧異
4.有限性:不會產生無窮迴圈
5.有效性:步驟清楚可行

三、演算法效能分析

時間複雜度:程式執行時間

空間複雜度:程式執行所需耗費記憶體
1.固定空間記憶體:基本程式碼、常數、變數
2.變動空間記憶體:隨程式進行而改變大小、參考型態變數

演算法一般用以下三種方式衡量
1.O:執行時間量度最壞情況
2.Omega:執行時間量度最好情況
3.Theta:漸進表示法

2的n次方>n的2次方>nlogn>n>logn

四、常見演算法介紹
分治法
快速排序法
遞迴排序法
大整數乘法

遞迴法:自身引用
直接遞迴
間接遞迴
程式設計簡介


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言